import { setToken, getToken, removeToken } from '@/utils/auth'

export default {
  namespaced: true,
  state: {
    // 默认读取本地的 token
    token: getToken() || '',
    // 用户信息数据
    userInfo: {}
  },
  mutations: {
    // 存储 token
    setToken(state, newToken) {
      // 将 token 存入 vuex
      state.token = newToken
      // 将 token 存入本地
      setToken(newToken)
    },
    // 更新用户信息数据 userInfo
    setUserInfo(state, newUserInfo) {
      state.userInfo = newUserInfo
    },
    // 清空 token
    logout(state) {
      // 清空 vuex 中的 token
      state.token = ''
      // 清空本地存储中的 token
      removeToken()
      // 清空用户信息
      state.userInfo = {}
    }
  },
  actions: {

  }
}
